Update ui deps sync (major) - #685
Conversation
WalkthroughThis PR upgrades dependencies in the UI package. The OpenAI dependency is bumped from 5.23.2 to 6.5.0 in both the import map and package.json. Additional devDependencies are also updated: svelte-check, svelte-preprocess, and tailwindcss to newer minor and patch versions. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested reviewers
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
e49ac46 to
394311c
Compare
|
Caution Review the following alerts detected in dependencies. According to your organization's Security Policy, you must resolve all "Block" alerts before proceeding. Learn more about Socket for GitHub.
|
ab19736 to
e5f0fb6
Compare
2f3fb12 to
9c27729
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
packages/ui/package.json (1)
15-45: Critical: Tailwind v4 migration incomplete—build will fail due to missing configuration updates.The upgrade to Tailwind v4 requires configuration and CSS syntax changes that are not present in this PR:
Missing required dependency:
@tailwindcss/postcssnot inpackage.json. Tailwind v4 moved the PostCSS plugin to a separate package; yourpostcss.config.jsrequires'tailwindcss'which no longer exists as a plugin.Outdated CSS directives:
packages/ui/src/common/styles/global.css: Change@tailwind utilities;to@import "tailwindcss";packages/ui/src/common/styles/standalone.css: Likely needs same updateIncompatible preprocessor config:
packages/ui/svelte.config.jshaspostcss: truewhich will fail when PostCSS can't load the tailwindcss plugin.Required changes before merge:
- Add
"@tailwindcss/postcss": "next"todevDependencies(or use CSS-first approach by removing postcss config entirely)- Update all CSS files from
@tailwinddirectives to@import "tailwindcss"- Run
npm run buildandnpm run validateto verify the build succeeds- Confirm
svelte-checkpasses with Svelte v3.55.0 + svelte-check v4.3.3The OpenAI SDK upgrade (v5.23.2→6.5.0) appears compatible with your usage patterns.
🧹 Nitpick comments (1)
packages/ui/package.json (1)
29-29: Consider using a caret range for OpenAI to allow patch/minor updates.The version is pinned to an exact semver (6.5.0) rather than using a caret range (^6.5.0). While pinning prevents accidental upgrades, it also blocks security patches and minor updates. Most projects use caret ranges for npm dependencies to balance safety and flexibility. If exact pinning is intentional, please document the rationale.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
yarn.lockis excluded by!**/yarn.lock,!**/*.lock
📒 Files selected for processing (2)
packages/ui/import_map.json(1 hunks)packages/ui/package.json(2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (10)
- GitHub Check: boostsecurity - boostsecurityio/semgrep-pro
- GitHub Check: check
- GitHub Check: build (cairo, default)
- GitHub Check: build (solidity, default)
- GitHub Check: build (stellar, default)
- GitHub Check: build (stellar, compile)
- GitHub Check: build (stylus, default)
- GitHub Check: format-lint
- GitHub Check: mcp
- GitHub Check: semgrep-cloud-platform/scan
🔇 Additional comments (2)
packages/ui/import_map.json (1)
4-4: Verify OpenAI SDK v6 compatibility—significant API migration required.The OpenAI SDK v6 migrated from node-fetch to builtin fetch, which represents a breaking change. Before merging, you must verify that:
- All application code consuming the OpenAI SDK has been updated to work with v6's API (e.g., method signatures, response shapes)
- The application builds successfully with the new version
- Existing tests pass with v6
Since the PR context shows no code changes related to OpenAI usage, there's a risk that dependent code is incompatible with v6.
packages/ui/package.json (1)
39-40: Verify Svelte ecosystem upgrade—ensure build tools meet minimum requirements.Svelte 4 is mainly a maintenance release that increases the minimum version requirements, with Node.js 16 now the minimum version and TypeScript 5+ recommended. The package.json shows TypeScript ^5.9.3 (line 44), which satisfies requirements.
However, verify that:
- The application builds successfully with svelte-check ^4.3.3
- If using SvelteKit, it's version 1.20.4 or newer (check if applicable)
- The
validatescript at line 12 (svelte-check) runs without errors
| "tailwindcss": "^3.4.18", | ||
| "svelte-check": "^4.3.3", | ||
| "svelte-preprocess": "^6.0.3", | ||
| "tailwindcss": "^4.1.14", |
There was a problem hiding this comment.
🧩 Analysis chain
Tailwind CSS v4.0 is a major version with necessary updates required from v3 to v4. This update introduces breaking changes that are NOT evident in this PR:
- CSS imports: In v4 you import Tailwind using a regular CSS @import statement, not using the @tailwind directives
- Preprocessor incompatibility: Tailwind CSS v4.0 is not designed to be used with CSS preprocessors like Sass, Less, or Stylus, and it is not possible to use Sass for <style> blocks in Svelte
- Browser support: Tailwind CSS v4.0 is designed for Safari 16.4+, Chrome 111+, and Firefox 128+. If you need to support older browsers, stick with v3.4
- Configuration: CSS-first config replaces JavaScript-based tailwind.config.js
The PR shows no corresponding updates to CSS files, Tailwind config, or SCSS/Sass removal. The upgrade tool will handle most of these changes automatically, but there's no evidence it was used. Without these changes, the build will likely fail or styles will break.
Verify the following before merging:
- All CSS files have been updated to use
@import "tailwindcss"instead of@tailwinddirectives - tailwind.config.js has been updated to CSS-first format (or removed if no custom config needed)
- Any SCSS/Sass files have been converted to plain CSS or removed
- The build completes successfully and styles render correctly
Run the following verification script:
🏁 Script executed:
#!/bin/bash
# Find and list Tailwind-related config and CSS files
echo "=== Tailwind Config Files ==="
find . -name "tailwind.config.*" -o -name "tailwind.css" -o -name "global.css" | grep -v node_modules
echo ""
echo "=== SCSS/Sass Files (may be incompatible with Tailwind v4) ==="
find . -name "*.scss" -o -name "*.sass" | grep -v node_modules | head -20
echo ""
echo "=== CSS Files Mentioning @tailwind ==="
rg -t css "@tailwind" --no-heading
echo ""
echo "=== SVG/Vue/Svelte Files with Style Blocks Using @tailwind ==="
rg -t svelte -A2 "<style" | grep -A2 "@tailwind"Length of output: 418
CSS files must be updated to use Tailwind v4 syntax—@tailwind directives are no longer supported.
In v4 you import Tailwind using a regular CSS @import statement, not using the @tailwind directives you used in v3. The PR updates tailwindcss to v4.1.14 but contains two CSS files that still use the deprecated v3 syntax:
packages/ui/src/standalone.css:@tailwind utilities;packages/ui/src/common/styles/global.css:@tailwind utilities;
These files must be updated before this PR can be merged. Change @tailwind utilities; to @import "tailwindcss"; in both files.
Additional items to verify:
- If
tailwind.config.jscontains custom configuration, it must be explicitly loaded with@config "../../tailwind.config.js";at the top of your CSS file (or migrated to CSS-first format using@theme) - Ensure
tailwind.config.jsis no longer auto-detected in v4 and add the@configdirective if needed - If any
.svelte,.vue, or other component files use<style>blocks with Tailwind, verify they reference the updated CSS or use the new v4 syntax
e3ed09e to
65753f3
Compare
574305a to
84def4e
Compare
856b623 to
9ab9475
Compare
9ceae70 to
e56267c
Compare
886ad57 to
98f9d30
Compare
b394213 to
6bad696
Compare
ed2eab4 to
d865f3b
Compare
bed7122 to
67c2053
Compare
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
This PR contains the following updates:
^5.1.1→^6.0.0^28.0.8→^29.0.3^6.4.1→^8.0.1^3.8.6→^4.7.6^5.1.4→^6.0.5^3.4.18→^4.3.3^5.9.3→^7.0.2Release Notes
rollup/plugins (@rollup/plugin-alias)
v6.0.02025-10-28
Breaking Changes
rollup/plugins (@rollup/plugin-commonjs)
v29.0.32026-05-29
Bugfixes
v29.0.22026-03-06
Bugfixes
v29.0.12026-03-05
Bugfixes
v29.0.02025-10-30
Breaking Changes
requireNodeBuiltinsoption (#1937)v28.0.92025-10-24
Bugfixes
node:builtins withstrictRequires: auto(#1930)avajs/ava (ava)
v8.0.1Compare Source
What's Changed
This release officially adds Node.js 26 support, with thanks to @novemberborn in #3450.
Per our policy, support for Node.js 25 has been removed.
Full Changelog: avajs/ava@v8.0.0...v8.0.1
v8.0.0Compare Source
Breaking Changes
AVA now expects Node.js 22.20, 24.12 or newer.
Internally AVA is now fully ESM. This is possible now that Node.js supports loading ES modules using
require()calls and simplifies AVA's types and internals.If you use AVA from a CommonJS project you'll have to update your imports:
We expect an increasing number of projects to be ESM only. As per the above, CommonJS is still supported, but we don't expect
cjsextensions to be used. The default file extensions are nowjsandmjs. Specifyextensions: ['cjs', 'js', 'mjs']for AVA to run test files with thecjsextension.All test files (and those loaded through AVA's
requireconfig) are now loaded viaimport(). Use customization hooks for transpilation. The object form of theextensionsconfiguration is no longer supported.If you use AVA with @ava/typescript you must upgrade that package to v7.
New Features
There's two new test modifiers courtesy of @sindresorhus:
test.skipIf()to skip a test based on a runtime condition.test.runIf()is the inverse: the test only runs when the condition is true.These work with other modifiers like
.serialand.failing:Other Changes
*.tsbuildinfofilesthrowsAsync/notThrowsAsyncare not awaited have been improved by @sindresorhus in #3436New Contributors
Full Changelog: avajs/ava@v7.0.0...v8.0.0
v7.0.0Compare Source
What's Changed
strip-ansiwithnode:util.stripVTControlCharactersby @fisker in #3403globby @novemberborn in #3416Full Changelog: avajs/ava@v6.4.1...v7.0.0
sveltejs/language-tools (svelte-check)
v4.7.6Compare Source
Patch Changes
fix: don't log an error for vite configs without a Svelte plugin (#3091)
fix: handle SvelteKit 3 having its config merged at the top level (#3104)
v4.7.5Compare Source
Patch Changes
fix: prevent silent error during start-up caused by unhandled promise (#3096)
Updated dependencies [
1df53d8]:v4.7.4Compare Source
Patch Changes
v4.7.3Compare Source
Patch Changes
+error.svelteprops (#3076)v4.7.2Compare Source
Patch Changes
fix: resolve tsgo bin path with package.json (#3074)
fix: report tsconfig errors in --tsgo-experimental-api (#3070)
v4.7.1Compare Source
Patch Changes
v4.7.0Compare Source
Minor Changes
feat: add
--configoption (#3066)feat: svelte-check tsgo support with experimental api (#3036)
Patch Changes
fix: load esm version of Vite (#3065)
fix: stop excluding workspaces under dot-prefixed ancestors (#3037)
Updated dependencies [
7a3464b,a2561fc]:v4.6.0Compare Source
Minor Changes
vite.config.js/ts(#3031)Patch Changes
151cf45]:v4.5.0Compare Source
Minor Changes
Patch Changes
fix: properly handle props with the name
slotinside Svelte 5 snippets (#3030)feat: add support for svelte config ts/mts files (#3009)
v4.4.8Compare Source
Patch Changes
v4.4.7Compare Source
Patch Changes
fix: flush stdout/stderr before exit (#3014)
fix: report diagnostics in tsconfig.json (#3005)
v4.4.6Compare Source
Patch Changes
fix: prevent config loading message in svelte-check --incremental (#2974)
fix: resolve svelte files with NodeNext in --incremental/tsgo (#2990)
perf: various optimization with ast walk (#2969)
fix: prevent error with escape sequence in attribute (#2968)
fix: typescript 6.0 compatibility (#2988)
v4.4.5Compare Source
Patch Changes
v4.4.4Compare Source
Patch Changes
fix: more robust detection of
lang="ts"attribute (#2957)fix: pass filename to
warningFilter(#2959)fix: resolve svelte files under path alias in
--incremental/tsgomode (#2955)v4.4.3Compare Source
Patch Changes
@ts-ignoreetc comments within tags (#2950)v4.4.2Compare Source
Patch Changes
fix: resolve shims correctly in
--incremental/tsgomode (cd1ff2f)fix: include
referencesin generatedtsconfig.jsonin--incremental/tsgomode (1990f74)v4.4.1Compare Source
Patch Changes
fix: handle relative imports reaching outside working directory when using
--incremental/--tsgoflags (#2942)fix: support SvelteKit zero types in svelte-check --incremental (#2939)
v4.4.0Compare Source
Minor Changes
--incrementaland--tsgoflags (#2932)Patch Changes
fix: ignore Unix domain sockets in file watcher to prevent crashes (#2931)
fix: properly use machine output by default for Claude Code (
e9f58d2)v4.3.6Compare Source
Patch Changes
v4.3.5Compare Source
Patch Changes
v4.3.4Compare Source
Patch Changes
v4.3.3Compare Source
Patch Changes
fix: prevent file watcher issue (#2859)
fix: allow
undefinedandnullvalues for#eachin Svelte 5 (#2863)perf: check if file content changed in tsconfig file watch (#2859)
v4.3.2Compare Source
Patch Changes
perf: tweak some snapshot hot paths (#2852)
perf: more precise module cache invalidation (#2853)
fix: properly handle
runes={false}in<svelte:options>(#2847)See https://github.com/sveltejs/language-tools/releases
v4.3.1Compare Source
fix: handle object literal in MustacheTag (#2805)
v4.3.0Compare Source
awaitsupport (#2799)v4.2.2Compare Source
v4.2.1Compare Source
v4.2.0Compare Source
v4.1.7Compare Source
v4.1.6Compare Source
v4.1.5Compare Source
v4.1.4Compare Source
v4.1.3Compare Source
v4.1.2Compare Source
v4.1.1Compare Source
v4.1.0Compare Source
v4.0.9Compare Source
v4.0.8Compare Source
v4.0.7Compare Source
$props: infer types for$bindable, infer function type from arrow functionv4.0.6Compare Source
const load = ...declarations (#2540)v4.0.5Compare Source
v4.0.4Compare Source
v4.0.3Compare Source
Componentin type positions. Instead you need to prepend it withtypeof. Here's how you do it:let x: Component. After:let x: ReturnType<typeof Component>let x: typeof Component. Afterlet x: typeof Component(no change)v4.0.2Compare Source
Componentinterface get proper intellisensev4.0.1Compare Source
processaugmentation from internald.tsfilev4.0.0Compare Source
Breaking changes
processaugmentation (declaring aprocess.browserfield) was removed.sveltefiles now take precedence over.svelte.js/tsfiles (if both exist) (#2481)skipLibCheckis no longer forced totrue, which may result ind.tsfiles now being checked in your project, which they were not before, revealing type errors. Either fix those or add"skipLibCheck": trueto yourtsconfig.json(#1976, #2463)sveltejs/svelte-preprocess (svelte-preprocess)
v6.0.5Compare Source
Patch Changes
v6.0.4Compare Source
Patch Changes
v6.0.3Compare Source
Bug Fixes
v6.0.2Compare Source
Bug Fixes
v6.0.1Compare Source
Bug Fixes
v6.0.0Compare Source
BREAKING CHANGES
preserveoption as it's unnecessaryBug Fixes
5.1.4 (2024-04-16)
Bug Fixes
5.1.3 (2023-12-18)
Bug Fixes
5.1.2 (2023-12-12)
5.1.1 (2023-11-21)
Bug Fixes
tailwindlabs/tailwindcss (tailwindcss)
v4.3.3Compare Source
Fixed
--watch --poll[=ms]in@tailwindcss/cliwhen filesystem events are unreliable or unavailable (#20297)bg-[#fff]andbg-[#FFF]→bg-white) (#20298)iframe:focus-visibleoutline styles (#20292)theme('colors.foo')in JS plugins resolves correctly when both--color-fooand--color-foo-barexist (#20299)shadow-sm/12.5,text-shadow-sm/12.5,drop-shadow-sm/12.5, andinset-shadow-sm/12.5(#20302)[data-foo]divas two selectors instead of one (#20303)@tailwindcss/postcssrebuilds when a preprocessor like Sass changes the input CSS without changing the input file on disk (#20310)@tailwindcss/browserand Tailwind Play (#20124)oklch(#20314)--spacing(0)is optimized to0pxinstead of0so it remains a<length>when used incalc(…)(#20319)@parcel/watcheronly when needed in@tailwindcss/cli --watchmode, so one-off builds and--watch --pollwork when@parcel/watchercan't be loaded (#20325)system-uiandui-sans-serifso CJK text respects the page'slangattribute on Windows (#20318)@tailwindcss/upgradefrom rewriting ignored files when run from a subdirectory (#20329)@sourcerules pointing to nested files are scanned when later@sourcerules point to files in parent folders (#20335)@tailwindcss/vitefrom triggering full page reloads when scanned files are processed by Vite but haven't been loaded as modules yet (#20336)v4.3.2Compare Source
Fixed
auto-rows-*andauto-cols-*utilities (e.g.auto-rows-12andauto-cols-16) (#20229)@tailwindcss/cliin--watchmode from crashing on Windows when@sourcepoints to a directory that doesn't exist (#20242)@tailwindcss/vitefrom crashing in Deno v2.8.x whencontext.parentURLis not a valid URL (#20245)@tailwindcss/cliin--watchmode rebuilds when the input CSS file changes in an ignored directory (#20246)@variantrules used inaddBase(…)to use custom variants defined later (#20247)@tailwindcss/vitefrom crashing during HMR when scanned files or directories are deleted (#20259)font-sizeinstead ofcolordeclarations fortext-[--spacing(…)](#20260)@sourcepatterns from scanning unrelated sibling files and folders (#20263)%]…[%in.tt,.tt2, and.txfiles (#20269)p.text-black[condition](#20269)@position-tryrules from triggering unknown at-rule warnings when optimizing CSS (#20277)--opacitytheme values (#20287)@tailwindcss/postcsswhen used with newer PostCSS patch releases (#20289)v4.3.1Compare Source
Added
--silentoption to suppress output in@tailwindcss/cli(#20100)Fixed
Module#registerHooksinstead ofModule#registeron Node 26+ (#20028)@applyto be used with CSS mixins (#19427)not-*correctly negates@containerqueries, includingstyle(…)queries (#20059)drop-shadow-*color utilities work with custom shadow values containingcalc(…)(#20080)@tailwindcss/vite(#20103)@tailwindcss/webpackcan be installed in Rspack projects without requiringwebpackas a peer dependency (#20027)calc(…)expressions (e.g.px-[calc(1rem+0px)]→px-[calc(1rem+0)]) (#20127)left-[99999px]→left-[99999px], notleft-24999.75) (#20130)@tailwindcss/cliin--watchmode recovers when a tracked dependency is deleted and restored (#20137)@tailwindcss/clibinaries are ignored when scanning for class candidates (#20139)addClass(…)andremoveClass(…)calls (#20198)@variantto be used insideaddBase(#19480)@sourceglobs with symlinks are preserved (#20203)@sourcerules can re-include files excluded by earlier@source notrules (#20203)@utilityrules (#20205)inset-shadow-noneand other inset shadows work correctly (#20208)@sourcedirectories are scanned even when ignored by git (#20214)@sourceglobs ending in**/*preserve dynamic path segments to avoid scanning too many files (#20217)calc(…)divisions when the result would require high precision (e.g.w-[calc(100%/3.5)]→w-[calc(100%/3.5)], notw-[28.571428571428573%]) (#20221)@tailwindcss/postcss(#20228)Changed
0instead ofcalc(var(--spacing) * 0)for spacing utilities likem-0andleft-0(#20196)var(--spacing)instead ofcalc(var(--spacing) * 1)for spacing utilities likem-1andleft-1(#20196)v4.3.0Compare Source
Added
@container-sizeutility (#18901)scrollbar-{auto,thin,none}utilities forscrollbar-width, andscrollbar-thumb-*/scrollbar-track-*color utilities forscrollbar-color(#19981, #20019)scrollbar-gutter-*utilities (#20018)zoom-*utilities (#20020)tab-*utilities (#20022)@variantwith stacked variants (e.g.@variant hover:focus { … }) (#19996)@variantwith compound variants (e.g.@variant hover, focus { … }) (#19996)--default(…)in--value(…)and--modifier(…)for functional@utilitydefinitions (#19989)Fixed
@pluginresolves package JavaScript entries instead of browser CSS entries when using@tailwindcss/vite(#19949)@importand@pluginpaths resolving from the wrong directory when using@tailwindcss/vite(#19965)@variantare processed by@tailwindcss/vite(#19966)basewhenresult.opts.fromis not provided when using@tailwindcss/postcss(#19980)_whitespace in arbitrary values (#19986)w-[calc(100%---spacing(60))]→w-[calc(100%-(--spacing(60)))]) (#19986)-mt-[20in]→mt-[-20in], notmt-[-1920px]) (#19988):has()variants from[&:has(…)]tohas-[…](#19991)styleattributes (e.g.style="flex-grow: 1"→style="flex-grow: 1", notstyle="grow: 1") (#19918)@utilitydefinitions with the same name but different value types ([#19777](https:/Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR was generated by Mend Renovate. View the repository job log.